home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Turnbull China Bikeride
/
Turnbull China Bikeride - Disc 2.iso
/
STUTTGART
/
DATABASE
/
FAMILY2
/
!Family
/
!Help
< prev
next >
Wrap
Text File
|
1994-10-25
|
27KB
|
565 lines
!Family - Family tree editor v2.10 (25 Oct 1994)
Denis Howe <dbh@doc.ic.ac.uk>
This program is Copyright 1993, 1994 Denis Howe. You may
distribute verbatim or modified copies of this program
provided each such copy is distributed with a copyright
notice and distribution conditions identical to these.
!Family is a RISC OS 3 application for editing and printing family trees.
It displays a graphical representation of all the descendents of a given
person on the screen or a printer and provides a simple system of menus and
dialogue boxes to allow you to move around the tree and modify it. You can
store collections of related people in files in the standard GEDCOM
genealogical data format.
This program requires RISC OS 3.
The latest version of this program should be available from the e-mail
server at archive-server@micros.hensa.ac.uk (send message 'help') or by
FTP to micros.hensa.ac.uk (148.88.8.84). It usually finds its way to
the Stuttgart FTP server and the Arcade BBS as well.
Getting started
===============
When you run !Family the Main window appears. It will be empty until
there is a 'current person'. There are two menus, one obtained by clicking
the MENU button over the main window and the other over the icon bar icon.
To create a person, follow the Goto⇨ item in the window menu (shortcut F5).
Enter a new name and that person will then become the current person. The
current person's name appears in the window menu in place of the 'Person'
item. This menu item is referred to as <person>⇨ below.
Main window
===========
The main window shows the 'current tree'. This is centred on the current
person and includes his* father (or his mother if his father is not known),
all his spouses and children and their spouses and children and so on.
There is only one main window so you can only edit one file with each
invocation of !Family though you can run multiple invocations and you can
store any number of trees in one file.
* Here and elsewhere, the male is assumed to embrace the female.
Each person's full name is shown if the "Choices⇨Show⇨Family name" option
is ticked (see "Choices" below). If it is off and their family name is the
same as their father's and he is also shown, then the family name is
omitted. In other words, the family name is only shown for the first male
ancestor with that name. The name is coloured blue for males, red for
females and green for unknown sex (but always black when printing).
The date of each person's birth and death are shown under their name,
separated by a dash (-). A "?" is displayed if the date of birth is not
known but nothing is shown for an unknown date of death (the person may
still be alive). If the "Choices⇨Show⇨Year only" option is ticked then
only the last group of digits of a date is shown. If the
"Choices⇨Show⇨Dates" option is off then no dates are displayed at all. The
birth and death fields may contain any text but for GEDCOM (see below)
compatibility they should look like "15 Oct 1960", possibly preceded by
ABT, AFT, BEF, EST for about, after, before or estimated.
Below the dates are the person's spouses with an "=" over each one.
Multiple spouses are placed side by side with a number after the "=". If
a spouse's parents are known they are not displayed but a "+" is appended
to the spouse's name to show that there is more information available.
Similarly, if the spouse has other marriages a "+" is appended to the "=".
Any offspring are spread horizontally beneath the appropriate spouse,
connected to the spouse by lines. Children whose other parent is unknown
appear beneath an "invisible spouse" which is numbered consecutively with
any known spouses.
!Family can store and display, uncommon relationships such as a man
marrying his aunt (or his mother!) and even impossible relationships. Each
person can appear in any number of postions but they will only appear once
in each "rôle": father, mother, child or spouse. So, for (an extreme)
example, if someone is entered as their own father they will appear once as
a father and once as a son. Spouses are assumed to be of different sexes,
fathers are male, mothers are female. If these restrictions cause problems
you can always create copies of the same person with different names (eg.
by adding [1], [2] after the names) and add appropriate notes (see below).
The main window's title shows the file currently being edited, if any,
followed by a "*" if the data has been modified since it was last saved.
If you close the main window with ADJUST and a file is currently loaded
then a directory display will be opened on the directory containing the
file. Closing the window does not discard any data. Clicking SELECT over
the bar icon will re-open the main window and the Notes windows (see
below).
Setting the current person
==========================
The current person is set either by clicking SELECT in the main window,
in which case the nearest person to the pointer becomes the current person,
or using the Goto⇨ menu item, which is also the way to display a person
not in the current tree or create a new person not related to any existing
person.
Adding a new person
===================
You can add a new person simply by entering a new name in any icon that
accepts names, ie. Name, Goto, Marry, Mother or Father (see below). If you
create a person with Goto then they will be completely unrelated to any
known person. You can connect them later as described below. A single
file may contain any number of disconnected trees of one or more people but
you will only be able to see one tree at a time. You must use Goto to
switch between them.
Changing a person's name, sex, dates or parents
===============================================
Clicking MENU over a person and following the <person>⇨Edit menu item leads
to the Edit dialogue box. This can also be opened by clicking ADJUST
over a person or by typing control-E to edit the current person. This
shows that person's current name, sex, dates, mother and father, and allows
you to change them.
Hit (⇧)Tab to move (up)down to the next field or use the up and down arrow
keys or the mouse to move between fields. Control-S toggles the sex. The
person's details are updated when you hit Return in any field or click the
OK icon.
Note that the only way to change a person's name is by editing the name
field in that person's own edit box. For example, if you create Robert and
then, in an Edit box for his son John, you notice that you spelt Robert's
name wrong, you cannot correct it by editing John's father field. That
would give John a different father. You must open an Edit box for Robert
and change his name field there. All references to him will then change
as well. Similarly, you cannot edit a different person by entering their
name in the Name field of John's Edit box. That will change John's name
and details.
If you change someone's sex, you may also have to change the sex of their
spouses and swap the parents of their children.
Name completion
===============
In any dialogue box icon where you can enter a name you can get name
completion by hitting the F1 key. This will search for all known people
of the appropriate sex, whose names begin with the characters typed so far,
if any. If there is no match you will hear a beep. A single match
replaces the contents of the icon. Multiple matches (up to a maximum of
MaxComp%, default 20), are displayed in the 'Completions window'. If all
matches share more initial letters than just the given string these will be
added to the icon.
Clicking SELECT over a name in the Completions window will enter that name
in the icon where F1 was hit. Alternatively, you can type more characters
to reduce the number of matches and hit F1 again.
For example, you might type F F1 and get Freddy, Frederick, Fritz and
Ferdinand in the Completions window. If you then type r e F1 only
Freddy and Frederick would be shown and the icon would contain "Fred".
Note that matching is exact so you must get punctuation and case right.
It is a good idea to use completion whenever you enter a name to ensure
that you don't accidentally create two entries for the same person with
slightly different names or one entry for multiple people with the same
name (there are five people called John Howe in my tree). If you hit
F1 and nothing happens, you know that what you have entered is a complete
match for a known name.
Naming convention
=================
Enter names in the usual order with the family name last, eg. "Denis
Bernard Howe". Add aliases or nicknames in parentheses, eg. "Michael Howe
(Mike)". If two people share exactly the same name then they can be
distinguished by some extra tag in square brackets []. This can be their
profession, place of birth, where they lived or a unique number.
This is only a suggested convention, the name field is really free text (up
to 127 characters). The only assumption is that anything between two '/'s
is the family name otherwise the last word, before a '(' or '[' if any, is
the family name. The family name is used for sorting the file and as the
default name for an added child. Display of family names is enabled by the
"Choices⇨Show⇨Family name" option.
Adding a spouse
===============
Follow the <person>⇨Marry⇨ menu item and enter the new spouse's name. You
may also have to set the mother of <person>'s children since a new spouse
does not automatically become a parent.
Removing a spouse
=================
Click MENU over a person. If he has any spouses then you can follow
<person>⇨Divorce⇨ to a menu listing them. Choose the one you want to
remove from the list. This also removes him from her list. She will still
exist as a person even though she will no longer be visible in his tree.
Any children of the couple remain the children of the father but will have
no mother.
Reordering spouses
==================
Spouses are stored in the order in which they are married. You can move a
spouse to the last (right-most) postition by divorcing and remarrying her.
You will also have to reset the mother of her children. A similar
procedure applies to children with only one parent, if you clear the parent
and re-enter it they will be added after any other spouses or children.
Adding a child
==============
Click MENU over either parent and choose <person>⇨Child or type Control-C
to give the current person a new child. This will open an Edit dialogue
box which has been partially filled in with the father's family name (if
there is exactly one possible father) for the Name entry and the mother's
and father's names in the relevant places.
Alternatively, changing a person's parent automatically adds them as a
child of the new parent. In this case, however, it is not assumed that
your father's only spouse is your mother and vice versa as happens with the
<person>⇨Child method.
To remove a child, you can either change the child's parents in his Edit
box or remove the child completely (see "Removing people" below).
Re-ordering children
====================
Children will appear in the order in which they are added (not necessarily
in order of birth date), most recent on the right. Choose the <person>⇨
Older menu item to swap someone with the sibling to his left. This only
works for children who share the same two parents, if they only share one
parent you must re-order them by changing their parents (or their parents'
marriages).
Removing people
===============
Choosing <person>⇨Remove will remove all trace of the person from the
database. If the person was the current person, there will now be no
current person. There is no way to recover a person once they have been
removed like this, except by reloading the file, though that will undo any
other changes as well. To remove all people and other objects from the
database, choose Reset from the icon bar menu.
Notes window
============
Each person can have any amount of free text associated with their entry.
This is not displayed in the main window but the current person's notes
are displayed in a separate window with his name in the title bar. See
below for how to edit these notes. If there is no current person, the
notes window is not shown.
Notes can be used for extra data such as place of birth, address,
profession, source citations and marriage details. (These should really
be stored in specific GEDCOM fields. A later version of !Family will be
able to display and edit other fields).
Editing notes
=============
Click SELECT anywhere in the Notes window. The notes are written to a
type &FFF (Text) temporary file (Wimp$Scrap) which is then sent to a text
editor. This can happen in one of two ways:
Jason Williams's External Edit protocol is tried first. !Family sends the
notes straight to the editor. When you save from the editor the notes are
automatically loaded back into !Family.
Two text editors handle the External Edit protocol:
Guttorm (Armstrong) Vik's superb StrongED II (versions 1.20 and later).
The latest version is 3.02. This was available from Stallion Software,
Arundel House, Arundel Road, Camden, Bath, AVON BA1 5JX. Tel. (0225)
339090, fax. (0225) 333090 but Armstrong tells me it's going to become
shareware again.
Dominic Symes <symes@maths.oxford.ac.uk>'s superb Zap (versions 1.10 and
later) available from the HENSA server (see the top of this file) or The
Archimedes Public Domain Library, 39 Knighton Park Road, Sydenham, London
SE26 5RN. Dominic's snail-mail address is Exeter College, Oxford, OX1 3DP,
UK.
If no editor responds to the External Edit request then a *Filer_Run
command is executed to pass the file to an editor, either one already
running or a new invocation. Without External Edit you must drag the
file icon from the editor's save dialogue box to a !Family window to load
the edited notes back into !Family.
!Family will support Object Linking and Embedding instead of External Edit
when a free version of the OLESupport module becomes available.
Loading a Text file to !Family (in any way) causes its contents to replace
the current person's notes. Note that if you start editing person A's
notes then make B the current person then reload the notes, they will
replace B's notes, not A's.
Obscure technical note: multiple GEDCOM 'NOTE' objects belonging to one
person will be concatenated into one NOTE object after being editted.
Saving and loading files
========================
!Family recognises files of type &D78 (GEDCOM), described below. !Family
will load a file, either when you double-click it (type D78 only) or when
you drag it to the bar icon or a !Family window. In the first two cases
any existing people will be discarded (after confirmation) but if a file is
dragged to the main window then its contents are merged with the
current data. If this results in two individuals with the same name then
you can rename them using the <person>⇨Edit menu item. Pressing the Escape
key while a file is loading will abort the load and clear any existing
people.
To save all the people you have created, follow the Save⇨ menu item from
either menu (shortcut F3). If there is a current file then simply choosing
the Save item will save the data to that file. The data is first written
to a temporary file with the same name but with the last character changed
to "=". This file is renamed when the write is complete. This has the
advantage that if the write fails for any reason you will still have the
old version of the file. The disadvantage is that it requires twice as
much disk space while the file is being written.
!Family sorts people in order of family name and then whole name. To print
a GEDCOM file as text it may be necessary to temporarily change its
filetype to &FFF (Text) since the default is to print it as a tree (see
below). The current person is also remembered and restored when you load a
file.
&D78 is actually allocated to Minerva for their !Ancestry program which
does not understand GEDCOM. I have stolen it since you won't want to use
any other genealogy program once you've tried !Family :-). I have written
a program to convert !Ancestry files to GEDCOM - let me know if you would
like a copy.
Files of type &FFF (Text) are loaded as notes for the current person as
described above.
GEDCOM format
=============
GEDCOM (Genealogical Data Communication) is the de facto international
standard for genealogical data, specified by Mormon church. If you look up
"Church of Jesus Christ of Latter-day Saints" in your 'phone book you may
find a "Family History Centre" listed. There you can search gigabytes of
genealogical data on CDROM, copy bits to a file in GEDCOM format, bring it
home on DOS floppy, set its type to D78 and load it into !Family.
GEDCOM files are actually plain ASCII. Each line describes an object and
is of the form
level [@id@] tag value
where level is a number. Objects at level n are sub-objects of those at
level n-1. The top-level (0) objects are things like individuals (tag =
"INDI") and families (tag = "FAM"). Individuals have sub-objects with tags
like NAME, BIRT, DEAT, FAMS and FAMC. A FAMS object will have a value like
@F12@ which is a cross-reference to a (level 0) FAM object with id = F12.
This is a family in which the individual is a spouse (or parent). A FAMC
object also has a cross-reference to a FAM object for a family in which the
person is a child. FAM objects have HUSB, WIFE and CHIL sub-objects whose
values are cross-references back to individuals. Here is an example.
0 @I1@ INDI ; An individual
1 NAME John ; called John
1 FAMC @F1@ ; is a child in family F1
0 @I2@ INDI
1 NAME David ; David
1 FAMS @F1@ ; is a parent in F1
0 @I3@ INDI
1 NAME Mary ; Mary
1 FAMS @F1@ ; is a parent in F1
0 @F1@ FAM ; Family F1 includes
1 HUSB @I2@ ; David, the father
1 WIFE @I3@ ; Mary, the mother
1 CHIL @I1@ ; John, a child
The GEDCOM standard defines many more tags than are used by !Family.
Objects which are not recognised are not displayed but are preserved when
the file is saved. For full details of GEDCOM, write to
GEDCOM Coordinator
Family History Department
50 East North Temple
Salt Lake City UT 84150
USA
or FTP to vm1.nodak.edu or e-mail me.
Although GEDCOM files could be edited with an ordinary text editor, you
would have to be careful not to make entries inconsistent with each other,
particularly cross-references between families and their members.
Printing trees
==============
You can print the current tree to the current printer in the following
ways:
1. Choose Print from the icon bar menu,
2. Hit the Print key or
3. Drag a family tree file to the !Printers icon.
Method 3 will only print the current tree. This includes all descendants
of the current person's father or mother. To print anyone else you must
first load the file and select a different person.
Trees are printed in the font, point size and orientation determined by the
current options (see "Choices" below). They may be printed in seascape
(upside-down landscape) orientation (rotated 90° clockwise) or portrait (no
rotation). You will have to experiment to see which orientation suits the
trees you are printing and the size of paper you are printing them on.
Note that the orientation selected for printing is independent of any
orientation implied by the paper size selected in the printer driver.
Creating a report
=================
!Family can generate a text file listing all the people in a database,
their dates, parents, spouses, children and notes. To do this, follow the
Report⇨ item in the icon bar menu and drag the text file icon to a
directory display in the normal way. People will be listed in order of
family name and then whole name. A future version may allow you to specify
the format of the report.
Choices
=======
The parameters listed below can be altered from the Choices item in the
icon bar menu. To save your current choices, choose the Choices⇨Save item
from the icon bar menu. The choices will be saved in a file
!Family.Choices which will be loaded whenever !Family starts. To restore
the defaults, delete the file from the application directory and restart
!Family.
Parameter Default Meaning
--------------------------------------------------------------------------
Choices⇨Font⇨
Name Trinity.Medium Font used when printing trees.
Point size 10 Width and height of font for printing.
Use on Off Should the above font be used on
screen screen as well as for printing?
Print rotated On Rotate 90° when printing?
Choices⇨Show⇨
Family name On Should a person's family name be shown
if it is the same as their father's?
Dates On Should a person's dates of
birth and death be shown?
Year only On Just show dates' last group of digits?
--------------------------------------------------------------------------
If the "Use on screen" option is off, the system font is used on screen
and the selected font is only used for printing. If it is selected then
the tree should look the same on screen as when it is printed, except that
some printers do not reproduce screen fonts exactly.
Quitting
========
To quit, choose Quit from either menu (shortcut: Control-Q). If you
have made changes which you have not saved then you will be asked whether
you wish to save your data or discard it.
Memory
======
!Family allocates and maintains its own free memory heap. The size of
this is determined by the WimpSlot command in !Run. You can edit !Run to
accomodate more people or to allow the program to run in less RAM. The
number of kilobytes of memory !Family has left is shown on the icon on the
icon bar. You will get a warning if less than 5% of the heap is free, in
which case you should attempt to save your file, increase the WimpSlot and
re-run !Family. You will need to set the WimpSlot to about 128k plus the
size of the file you want to load.
Bugs
====
There's always (at least) one more. Any error message ending in "!"
indicates an unexpected program error. When reporting bugs, PLEASE state
the versions of !Family and RISC OS and what printer, printer driver and
hardware you are using if relevant. Please give a precise recipe for
reproducing the bug and supply minimal example data and Choices files if
possible.
There is a bug in RISC OS 3 which occurs when you quit an application by
clicking on a 3D button (eg. !Family's "Discard"). Sometimes you will get
an address exception from the WIMP. The cure is to load BorderUtil from
the !NewLook application.
History
=======
0.00 06 Jan 1993 DBH
Non-WIMP version.
1.00 08 May 1993 DBH
WIMP version.
1.01 01 Aug 1993 DBH
= over spouse. Show year only. Fix Quit icon in Save win. Child
gets father's name. Handle shutdown msg. Fix bar menu position.
Close notes when close main. Reorder siblings. Fix notes format.
Choices.
1.02 No release DBH
Landscape/portrait option. Fix notes terminator. Open Edit win as
win not menu. Printer: open failure handling. Only scroll when new
person selected. Fix FNMatch for equal names. Fix loading of current
person. Quit aborts External Edit. "+" for invisible spouses. Close
with ADJUST opens file directory. Options file now !Choices.
2.00 06 Feb 1994 DBH
GEDCOM format. Option to show year only/whole date.
2.01 16 Feb 1994 DBH
Fix PROCOlder.
2.02 18 Apr 1994 DBH
Fix PROCSetSave. Set font in PROCCalcAll. Set GCOLs in PROCDisplay.
Adapt to font height. Allow each person to appear in many places.
Interactive help. Print "=" even for unknown spouse. Font menu.
MessageTrans.
2.03 01 May 1994 DBH
DataSaveAck always unsafe again for !Zap External Edit.
2.04 19 May 1994 DBH
Print rotated now seascape (clockwise) rather than landscape (anti)
so left of tree is at top of page. Mark font name menu heap invalid
on reset. Fix font menu tick setting. Coloured sexes on screen. 3D
templates. ^E edits current person, ^C adds child. 'Current' button
in Goto and Marry boxes. 'Data modified' dbox.
2.05 15 Jun 1994 DBH
Report generator built in. Fixed "+" on "=". !FamTools.AncGed
converts Minerva !Ancestry files to GEDCOM. Fixed Font_DecodeMenu
call.
2.06 08 Aug 1994 DBH
More report indentation. "New" child may be existing individual.
Fix $(0) bugs, esp. notes.
2.07 19 Sep 1994 DBH
Space after cross-ref id optional.
2.08 28 Sep 1994 DBH
Options file now "Choices".
2.09 29 Sep 1994 DBH
Don't give up on bad cross-reference. Space after cross-ref id really
optional, ignore trailing whitespace, accept CRLF line terminator.
Should now read Pedigree GEDCOM output.
2.10 25 Oct 1994 DBH
Template beautification (thanks Loek). Don't scroll after edit.
To do
=====
Handle other GEDCOM objects.
Optionally show spouses' dates.
Display only a given number of generations.
Define a method of structuring names with selective display of parts.
Display & edit marriage date.
Window listing all names and dates.
Preview of pages to print. Print only selected pages.
Save in Draw format.
Display and edit multiple trees.
Ancestor tree.
Flexible report format.
Print all trees in file.
Print notes on tree?
Merge individuals and families from two files.
Cheap thrill
============
I would be overjoyed to receive bug reports (see "Bugs" above),
suggestions for improvements or any other comments. If you translate the
Messages and Templates files to another language, please send me a copy.
In fact, I would be thrilled just to know you have a copy of the program!
PLEASE SAY WHICH VERSION YOU HAVE
and where you got it from. Send me some e-mail or a floppy containing
your current version (and anything else you think I might enjoy) and I'll
send you the latest or next release. Make sure you tell me which version
you already have.
Denis Howe <dbh@doc.ic.ac.uk>
48 Anson Road, London NW2 3UU, UK
Home: +44 (181) 450 9448
Work: +44 (171) 594 8233
PS. Please remember to say which version of the program
you have if you get in touch with me. Thanks.